Beginners course module 5#2498
Conversation
Module 1-3 pages don't exist yet, so the syllabus links to them were 404ing the lychee internal link checker.
✅ Deploy Preview for condescending-goldwasser-91acf0 ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
kanungle
left a comment
There was a problem hiding this comment.
Multimodal is good, but multilingual introduces challenges for evaluating search results. We can't expect learners to know multiple spoken languages.
| - 📰 **Daily Signals**: News, earnings calls, satellite images, factory footage, ingested every 24 hours. | ||
| - 🔍 **Clustering**: Group signals by supplier, topic, and risk theme using vector proximity. | ||
| - 🌏 **Cross-Language Queries**: Ask in English, retrieve what Japanese and Chinese sources are saying. |
| | Financial filings | text | fin-e5 or MiniLM | supplier_id, filing_type, fiscal_year, currency | | ||
| | Social / forums | text | multilingual-e5-large + BM25 | supplier_id, platform, language, date, severity | | ||
|
|
||
| ### Multilingual Text: Why multilingual-e5-large |
There was a problem hiding this comment.
Multilingual can be hard, and would be difficult for users to verify
kanungle
left a comment
There was a problem hiding this comment.
Thanks for pushing the series forward. My earlier point stands though: multilingual is still the spine of this capstone (Sections 3 and 6, plus half the knowledge check). The gloss note helps for one hardcoded example, but learners still can't evaluate results in languages they don't read. Keep the multimodal story (text + image + audio, that part is strong) and reduce cross-language to a short "going further" section.
Code bugs to fix either way:
cross_language_risk_queryignores itssupplier_idparameter and hardcodesMatchValue(value="SUP-7291"). Should bematch=models.MatchValue(value=supplier_id).published_atis indexed as DATETIME but filtered withmodels.Range, which only accepts numbers, so the filter fails as written. Usemodels.DatetimeRange(gte=yesterday)here and inquery_supplier_risk. Also swapdatetime.utcnow()fordatetime.now(timezone.utc);utcnow()is deprecated.bm25_encode,chunk_text, andscore_riskare used but never defined. A beginner copying this hits NameError immediately. Define them (BM25 is available via fastembed'sQdrant/bm25) or state clearly they're stubs and link the Colab notebook with the runnable version.
Course mechanics:
4. Knowledge check has the answers printed under each question, so there's nothing to do. Turn two or three into hands-on tasks (extend query_supplier_risk to filter by source_type) and collapse the answers.
5. When images land, four-stage.png should be built from the Docs/Diagrams Figma component library using the Qdrant color palette so it matches the rest of the site.
6. This PR carries beginners/_index.md and module-0 files owned by #2492. Please remove them so this PR only adds module-5/; same request going out on every module PR.
7. Section 1 opener reads as AI prose: "A factory fire in Vietnam, a labor dispute in Bangladesh, a regulatory change in China: these events appear as signals…" Something plainer lands better: "A factory fire in Vietnam shows up in local news hours before any English wire picks it up."
Noting for launch, not blocking: the module video placeholder at the top will need the real video before the course goes live.
PREVIEW
This PR is still work in progress. Formatting and images will be added soon